<template>
    <fieldset>
        <legend>校验props</legend>
        <h1>123</h1>
        <h1>父组件传递的:{{val}}</h1>
    </fieldset>
</template>
<script>
    // 类型安全
    export default {
        //不规范,写demo可以这么玩儿
        // props: ['val']
        //校验
        props: {
            val: {
                //默认参数
                default() {
                    return '默认值'
                },
                type: String,//传递的必须是数值类型
                required: false,//必传
                //自定义校验函数
                validator(val) {
                    console.log(val)
                    //需要返回布尔值 
                    //true表示验证通过
                    //false表示验证不通过

                    //目的 只接受'lbw' '777' 其它的一律不通过

                    let data = ['lbw', '777','默认值']

                    let res = data.includes(val)

                    if (res) {  //通过
                        return true
                    } else {
                        //不通过
                        console.error('传入的值:' + val + '不是 lbw 777其中的一个,请检查重新传递')
                        return false
                    }
                }
            }
        }
    }
</script>